The present invention relates to techniques for performing reduced complexity Galois field arithmetic for correcting errors, and more particularly, to techniques for performing Galois field arithmetic using tower arithmetic that provides reduced complexity and reduced computational latency.
Errors in digital signals can be generated before the digital signals are stored on a data storage disk. Therefore, disk drives typically have error correction encoders. A Reed-Solomon (RS) encoder is one type of error correction encoder. An RS encoder generates error correction code (ECC) check bytes and cyclic redundancy check (CRC) bytes.
The ECC and CRC check bytes are used to detect errors and to correct errors in the data bytes using well known encoding processes. The RS encoder inserts ECC and CRC check bytes into the data stream before the data is written onto a disk. After data is read from the disk, an RS decoder uses the ECC and CRC check bytes to detect and correct errors in the data. Encoding and decoding of error correction codes is performed using arithmetical theories relating to Galois fields.
Many techniques for performing Galois field arithmetic in the context of error correction have been disclosed. For example, one prior art technique described in U.S. Pat. No. 5,502,665 relates to a method for performing Galois field multiplication. This technique requires a high degree of hardware complexity and requires a significant amount of computational latency. As a result, there is a need for performing Galois field arithmetic in a way that requires less hardware complexity and that has less computational latency.